#region Copyright 2006 - Evolution Tecnologia Ltda.
//
// Author: Rafael Franco Carvalho (rafael@Evolutiontec.com.br)
//
// All rights are reserved. Reproduction or transmission in whole or in part, in
// any form or by any means, eletronic, mechanical or otherwise, is prohibited
// without the prior written permission of the author.
//
// Filename: Identidades.cs
#endregion

using System;
using System.Collections.Generic;
using System.Text;

namespace csharp.rad.general
{
    public class Identidades
    {
        private Database myDatabase;
        private List<Identidade> identidadesItems = new List<Identidade>();

        public List<Identidade> Items
        {
            get
            {
                return identidadesItems;
            }
            set
            {
                identidadesItems = value;
            }
        }

        public Identidades(Database myDatabase)
        {
            this.myDatabase = myDatabase;
        }

        /// <summary>
        /// Lista todas as "identidades" da "pessoa" especificada
        /// </summary>
        /// <param name="value">PessoaId</param>
        /// <remarks>Se value = null, retorna todas as "identidades"</remarks>
        /// <returns></returns>
        public void GetData(String value)
        {
            String commandText;
            String tableName = "identidades";
            System.Data.DataSet sqlDataSet = new System.Data.DataSet();
            Database.Result databaseResult = new Database.Result();

            //note: value = 0, get all "identidades"
            if (value == null)
            {
                //Get all "identidades"
                commandText = "SELECT * "
                            + "FROM identidades "
                            + "ORDER BY identidade_usuario";
            }
            else
            {
                //Get "identidades" of "pessoa"
                commandText = "SELECT * "
                            + "FROM identidades "
                            + "WHERE (identidade_pessoa_id = '" + value + "')"
                            + "ORDER BY identidade_usuario";
            }

            sqlDataSet = myDatabase.ExecuteQuery(commandText, tableName, out databaseResult);
            foreach (System.Data.DataRow dataRecord in sqlDataSet.Tables[tableName].Rows)
            {
                Identidade identidadeItem = new Identidade(myDatabase);
                identidadeItem.Id = System.Convert.ToString(dataRecord["identidade_id"]);
                identidadeItem.PessoaId = System.Convert.ToString(dataRecord["identidade_pessoa_id"]);
                identidadeItem.Usuario = System.Convert.ToString(dataRecord["identidade_usuario"]);
                identidadeItem.Senha = System.Convert.ToString(dataRecord["identidade_senha"]);
                identidadesItems.Add(identidadeItem);
            }
            sqlDataSet.Dispose();
        }
    }
}
